package com.example.wechat.exception;


/**
 * ClassName: BusiErrorCode <br/>
 * Function: 错误码定义， 模块id 4位 + 错误码类型表示 + 3 位错误码， 通用错误码 0  业务错误码 1.  <br/>
 * Reason: TODO ADD REASON. <br/>
 * date: 2019年6月23日 下午5:42:13 <br/>
 *
 * @author clareqiao
 * @version
 * @since JDK 1.8
 */
public enum BusiErrorCode {
	/******************通用错误码************************************/
	// 系统错误
	ERR_SYSTEM_EXCP(20040001),
	//系统参数未配置
	ERR_SYSTEM_PARAM_NOT_CONFIG(20040002),
	//加密失败
	ERR_ENCRYPT_FAIL(20040003),
	//解密失败
	ERR_DECRYPT_FAIL(20040004),
	// 计算签名异常
	ERR_SIGNATURE_EXCEPTION(20040005),
	// 签名无效
	ERR_INVALID_SIGN(20040006),
	// 签名验证失败
	ERR_SIGN_VERIFY_FAILED(20040007),
	// DB签名验证失败
	ERR_DB_SIGN_VERIFY_FAILED(20040008),
	//参数不存在
	ERR_PARAM_NOT_EXIST(20040009),
	//参数不合法
	ERR_PARAM_INVALID(20040010),
	// 插入DB行数为0
	ERR_DB_EFFECT_ROW_ZERO(20040011),
	//DB分表索引出错
	ERR_CREATE_DB_TABLE_INDEX(20040012),
	// 插入DB失败
	ERR_DB_INSERT_FAILED(20040013),
	//调用http接口异常
	ERR_INVOKE_HTTP_INTEFACE(20040021),
	//生成ssid异常
	ERR_CREATE_SSID_EXCEPTION(20040022),
	//编码转换异常
	ERR_CHARSET_FORMAT_FAIL(20040023),

	/******************业务错误码************************************/
	// 地铁APP token过期
	ERR_MTRAPP_EXPIRED_TOKEN(20001001),
	// 无效的access_token
	ERR_INVALID_ACCESS_TOKEN_APPAUTH(10011012),
	// 过期access_token
	ERR_EXPIRED_ACCESS_TOKEN_APPAUTH(10011013),
	//access_token效验失败
	ERP_ACCESS_VERIFY_FAILED_APPAUTH(10011018),
	// appkey校验失败
	ERR_APPKEY_VERIFY_FAILED(20041011),
	// 无效的access_token
	ERR_INVALID_ACCESS_TOKEN(10031012),
	// 过期access_token
	ERR_EXPIRED_ACCESS_TOKEN(10031013),
	//你已在别处登录
	ERR_ACCESS_TOKEN_NOT_LATEST(20041014),
	//设备id不一致
	ERP_DEVICEID_DIEF(20041015),
	//password效验失败
	ERR_PASSWD_VERIFY_FAILED(20041016),
	//尝试登录次数达到上限
	ERP_LOGIN_TIMES_OVERTIMES(20041017),
	//access_token效验失败
	ERP_ACCESS_VERIFY_FAILED(10031018),

	//广铁app token校验失败
	ERR_INVALID_APP_TOKEN(20041021),
	//广铁小程序 token校验失败
	ERR_INVALID_APPLET_TOKEN(20041022),
	/********************操作数据库***************************/
	//数据库新增数据失败
	ERP_DB_INSERT_FAIL(20042001),
	//数据库批量新增数据失败
	ERP_DB_INSERTBATCH_FAIL(20042002),
	//数据库批量删除数据失败
	ERP_DB_DELETE_BATCHBYID_FAIL(20042003),
	//数据库删除数据失败
	ERP_DB_DELETEBYID_FAIL(20042004),
	//数据库更新数据失败
	ERP_DB_UPDATE_FAIL(20042005),
	//数据库查询数据失败
	ERP_DB_FIND_FAIL(20042006),
	//数据库根据ID查询数据失败
	ERP_DB_FINDBYID_FAIL(20042007),
	//数据库根据名称查询数据失败
	ERP_DB_FINDBYNAME_FAIL(20042008),
	//数据库查询所有数据失败
	ERP_DB_QUERYLISTALL_FAIL(20042009),
	//数据库根据分页查询数据失败
	ERP_DB_QUERYLISTBYPAGE_FAIL(20042010),
	//数据库查询总数量失败
	ERP_DB_COUNT_FAIL(20042011)
	;

	private final int value;

	private BusiErrorCode(int v) {
		this.value = v;
	}

	public int value() {
		return this.value;
	}

	public String toString() {
		return String.valueOf(this.value);
	}

}
